package org.bopis.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.bopis.services.db.DAOUsuario;
import org.bopis.utilidades.Utilidades;

import com.boole.model.Usuario;

/**
 * Clase que controla el formulario de envio de contraseña a usuarios que la olvidaron
 * @author i.fernandezmolina
 *
 */
public class SendPasswordForm extends ActionForm {

	private static final long serialVersionUID = 1L;
	
	private String email;
	
	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	/**
	 * Validaciones del fomulario
  	 */
  	public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) 
  	{
    	ActionErrors errors = new ActionErrors();
	
	    if (Utilidades.isVacia(email)) {
	      	errors.add("email", new ActionMessage("forgot.pass.email.required"));
    	}else{    		
    		//comprobamos si existe el usuario
    		Usuario usuario = DAOUsuario.getUsuarioByEmail(email);
    		if(usuario == null){
    			errors.add("email", new ActionMessage("forgot.pass.email.not.exist"));
    		}
    	}
	    
	    
    	
    	return errors;
  	}
	
  	/**
   	 * Resetea todas las propiedades a sus valores por defecto.
   	 */
  	public void reset(ActionMapping mapping, HttpServletRequest request) 
  	{
    	this.email = null;
  	}
	
}
